const { app, BrowserWindow, Menu, Tray } = require('electron');
const path = require('path');
let tray = null;
let win = null;

function createWindow () {
    win = new BrowserWindow({
        width: 1000,
        height: 600,
        webPreferences: {
            webviewTag: true,
            // devTools: true,
            // require
            contextIsolation: false,
            nodeIntegration: true,
            nodeIntegrationInWorker: true,
            nodeIntegrationInSubFrames: true,
            javascript: true,
            // 预加载
            preload: path.join(__dirname, 'fixJQuery.js')
        },
        frame: false
    });
    require('./message')(win,app);

    win.loadFile('./view/main.html');
    // win.loadURL("http://www.baidu.com");
    // console.log(process.mainModule.path);
    // Menu.setApplicationMenu(Menu.buildFromTemplate([
    //     {
    //         label: "退出",
    //         click() {
    //             app.quit();
    //         }
    //     },
    //     {
    //         label: "回到首页",
    //         click() {
    //             win.loadFile('./view/main.html');
    //         }
    //     },
    //     {
    //         label: "打开开发者窗口",
    //         click() {
    //             win.webContents.openDevTools();
    //         }
    //     },
    //     {
    //         // label: "上一页",
    //         role: 'undo'
    //     },
    //     {
    //         // label: "下一页",
    //         role: 'redo'
    //     },
    // ]));// 设置窗口的菜单
}

const buildTray = () => {
    let images = `上海.png
北京.png
南京.png
厦门.png
大连.png
天津.png
广州.png
成都.png
无锡.png
杭州.png
沈阳.png
深圳.png
温州.png
苏州.png
西安.png
贵阳.png
重庆.png
长沙.png
青岛.png`.split('\n');
    let leticonPath = path.join(__dirname, `./image/${images[parseInt(Math.random() * images.length) + 1]}`);
    tray = new Tray(leticonPath);
    tray.setToolTip('离线网站管理');
    let trayMenuTemplate = [
        {//系统托盘图标目录
            label:'退出',
            click: function () {
                app.quit();
            }
        },{
            label: "显示",
            click() {
                win.show();
            }
        }
    ];
    const contextMenu = Menu.buildFromTemplate(trayMenuTemplate);
    tray.setContextMenu(contextMenu);
};

app.whenReady().then(() => {
    createWindow();

    app.on('activate', () => {
        if (BrowserWindow.getAllWindows().length === 0) {
            createWindow()
        }
    });
    buildTray();
})

app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') {
        app.quit()
    }
})